#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>

using namespace std;
int main()
{



    vector<pair<string, int>> vsd;
    vsd.push_back({"123",5});
    int sc = 5;
    auto itrs=find_if(vsd.begin(), vsd.end(), [&sc](const pair<string, int  > a) { return a.first == "123"; });
    if (itrs != vsd.end())
    {
        (*itrs).second = 32;
    }
    else
    {
        (*itrs).second = 32;
  
    }
    vector<int> vec1;
    for (int k = 0; k < 10; k++)
    {
        vec1.push_back(k);
    }
    rotate(vec1.begin(), vec1.begin() + 5, vec1.end());
    for_each(vec1.begin(), vec1.end(), [](int i) {cout << i << endl; });

    rotate(vec1.begin(),find(vec1.begin(), vec1.end(),7), vec1.end());
    for_each(vec1.begin(), vec1.end(), [](int i) {cout << i << endl; });
  
    vector<int> vec2(20,0);

    transform(vec1.begin(), vec1.end(), vec2.begin(), [](int value) {return -value; });
    transform(vec1.begin(), vec1.end(), ostream_iterator<int>(cout,"xx"), [](int value) {return -value; });
    auto c = find(vec1.begin(), vec1.end(), 9);
    cout << *c<<endl;

    return 0;
}